home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 25
/
Cream of the Crop 25.iso
/
os2
/
mbase101.zip
/
MaxBase.doc
< prev
next >
Wrap
Text File
|
1997-04-27
|
13KB
|
316 lines
This is the official documentation for MaxBase V 3
Index:
1 .. What Is MaxBase?
2 .. Features available
3 .. Menu Structure
4 .. Limitations
5 .. Legal Stuff
6 .. Frequently Asked Questions:
- How can I move the buttons in the panels from bottom to top?
- How can I avoid users messing up with my db?
- How can I translate MaxBase in my language?
- I have heard that I can print and view images. How do I?
- How much can I customize it? Can I have two languages at once?
1 What is MaxBase?
------------------
MaxBase is a graphical tool that allows you to manage your
databases, both as a database administrator (working with DBs structure),
and as a user. Of course the db created with MaxBase are compatible with
the RXDbase class, and vice versa, since MaxBase is only a front end
to the RXDbase APIs.
At the moment, nearly all of the RXDbase features are implemented.
MaxBase can be useful if you want to create a DB without 'hardwiring' it
into your application. When you create a new DB with MaxBase, you actually
create a .DAT and some (at least one) .IDX files.
Ship these all with your application, and simply connect to them with a
xxx.connect(rFileName) in your source.
MaxBase can be used as a stand-alone application, also, and so now you've
found a truly portable phone book (and now it's fast, too). :)
Notice: Sportello, the net-aware application (similar to MaxBase, but network-oriented)
has the same capabilities as MaxBase, only lacks the functions that allow to manage the
db structure and login/logout.
2 Features available:
---------------------
First of all, let's say that not all the features are available at any
time; they show up only when they make sense (i.e. you won't see
the 'logout' function if you're not logged in to a database).
Also, MaxBase saves (in the current directory) its position so the
next time it is started it will show up at the same location, with the
same size.
The following keyboard shortcuts are active in the list which presents
the records:
.) When presented with more than one entry field (eg. when entering
records data), use the keys PAGE UP and PAGE DOWN to move from
one line to the previous or the next.
.) double-clicking on an item brings you directly into the 'modify record'
layout.
.) Selecting a record and then selecting another one, while pressing
the shift key selects also all the records between the first and the
last that have been clicked.
.) They key CTRL+END is used as a shortcut for "store" when adding or
modifying records, "set filter" when setting filters.
Similarly, CTRL+HOME aborts the very same operations (much like hitting
"cancel" or equivalent)
.) The CTRL+A keys bring you directly into the 'add record'
layout.
.) The CTRL+C keys, when used during record adding or modifying,
copy the record which was last stored into disk into the
current fields.
.) The CTRL+D keys bring you directly into the 'delete records'
layout.
.) The CTRL+F keys bring you directly into the 'filter'
layout.
.) The CTRL+O keys bring you directly into the 'order'
layout.
Also, you can select which of the standard MaxBase's functions are to be
activated upon MaxBase startup. If MaxBase finds a file called maxbase.mnu
then it reads all the strings in it, and labels buttons and text bits
after those strings. If a button string is set to '-' (the dash character,
without the single-quotes), then that button is disabled. If maxbase.mnu
doesn't exist, then the default strings will be used.
NOTE: maxbase.mnu files for Unix and Mac (\n and \r line-terminated)
are stored in maxbase.*.unix and maxbase.*.mac where * = a language
(eg eng = english or ita = italian).
Just copy one of them into maxbase.mnu.
NOTE-2: All the messages and buttons presented to the user are configurable
through the customization of maxbase.mnu ASCII file, and that means also
that you can _translate_ maxbase from english to other languages (as
examples I've put in this package the english and the italian translations;
if you translated MaxBase into another language let me know!).
From RXDbase 0.90 on, I started using Taligent's widgets. You can browse your
data with the vertical and horizontal scrollbars, and you can also resize
the columns width by dragging the column separator in the maint caption for
that column.
MaxBase can be given a parameter in the command line: the name of the
database to log in to at startup (trailing .dat extension NEEDED).
E.g.: 'java MaxBase imgs.dat' or (OS/2's 1.0.1 Java) 'javapm MaxBase imgs.dat'
Just another thing: you can expand MaxBase functionalities through
the use of plug-ins. Refer to the plugins packages for more details.
The printing functions are provided as a plugin, and must be extracted
from the plugin.zip (macplug.zip, unixplug.zip) package.
(The plugin.ini file gets read *in the current directory* if it's present)
".dbf->.dat" lets you convert a DB III/IV file into RXDbase native format.
".dat->.dbf" converts a RXDbase native file into a DBIII/IV archive.
"Login" and "Logout" functions let you connect to a database, and the
records that this latter contains will be displayed .
"Del DB" lets you delete from the HD the db on which you're working.
"New DB" is meant for creation of a new database.
"Pack DB" lets you pack the archive: it deletes the records that are
marked as 'discarded' and rebuilds all the indexes. It may take some
time.
"Add Fld" - "Del Fld" allow you to add/delete fields from the archive
while it is still open. Warning: you must have at least one indexed
field on the archive (you won't be able to delete the last indexed
field).
"Sel All" - "Des All" do selects/deselect all the records that are loaded
into MaxBase.
"Mod Index" lets you modify the indexing strategy for a field; it works
similarly to "Add/Del Fld".
"Mod fld name" lets you change a field name.
"Mod fld length" lets you change a field length.
"Property" brings up a panel where you can state if you want to load for
display all the articles in the archive or the first 50 only. It defaults
to the first 50, and helps keeping MaxBase quick (it will be more useful
when the 'search' functions will be introduced).
"Add" - "Modify" - "Delete" do what the names suggest; they work with records.
"Form View" lets you see the currently selected record in, guess what,
a form view. This can be very useful, for example if you have records
which length makes them not to appear fully in the one-line view, or if
you need to put in the clipboard the contents of a field (E-mail addresses
or home page URLs come to mind).
"Order By" Lets you choose which index to order the db on.
"Refresh Now" refresh the current view with the contents of the db stored on
disk. Useful if you are using the "First 50" visualization strategy and delete
a lot of records.
"Set Filter" Lets you set filtering conditions for the records showed.
A note about filtering:
Filter sentences are divided by the .&. token, which means "logical AND".
You can setup as many as 100 of them.
From RXDbase.doc (adapted):
-----------
Operators recognized: >,>=,<,<=,=,<>.
Wildcards are allowed only for the = and <> operators, and they are represented by
the symbol '*', which means "every number of any character".
So, Ro* can be Robert, Ronald, etc.
*t can be Matt, Robert, etc.
M*t can be Matt, mount, etc. (The search is always case-insensitive)
You can use only one '*' on a given filter (e.g. you can't query for "Name = *u*i*l*"),
with the notable exception of the form *value*, which means "find a substring anywhere
that is equal to 'value'".
Example: "Telephone = *555*" will search for all phone numbers with a 555 in them.
A special operator is "!all" (without quotes): specifying !all as a field name,
that condition will be extended to all the fields.
If you specify a filter condition when another one is in use, the first one will be
dropped, and the most recent one will be used.
Passing as a value the null string will reset the filter conditions.
-----------
Example of valid filter sentence:
Name=M* .&. Surname =Johnson .&. Age >25 .&. Sex = M
3 Menu Structure
----------------
Main Panel : 'Tools..' 'Records..' 'Login|Logout' 'Sel All' 'Des All' 'Order By..' <Plugins,if any>
Tools Panel : 'DB Related' 'field related' 'DB utils' 'Properties' 'Main Panel..'
DB Related Panel: 'New DB' 'Del DB' 'Pack DB' 'Tools..'
Field Related Panel: 'Add Fld' 'Del Fld' 'Mod Index' 'Mod fld name' 'Mod fld length' 'Tools..'
DB Utils panel: '.dbf->.dat' '.dat->.dbf' 'Tools..'
Records Panel: 'Add' 'Modify' 'Delete' 'Set Filter' 'Form View' 'Refresh Now' 'Main Panel..'
4 Limitations: (these may be removed as MaxBase is enhanced)
--------------
You can create only DBs with <100 fields, although you can LOAD db with
more than 99 fields.
Record undelete is not supported.
5 Legal Stuff
-------------
MaxBase is a graphic frontend for the RXDbase class. It follows the RXDbase
licensing schema. See RXDbase.doc for details.
MaxBase is (c) Max Marsiglietti 1996, 97.
6 Frequently Asked Questions
----------------------------
Q) How can I move the buttons in the panels from bottom to top?
A) Settings for placements of buttons:
maxbase.mnu, 2nd line reads "South". Change it to North, East, West to see
what is the best for you. (North and South are the two that work well now).
Q) How can I avoid users messing up with my db?
A) If you want to customize MaxBase, remember that if you put a dash ("-"
without the quotes) on a button label in the maxbase.mnu text file, that
button will be disabled (useful if you want to put the db in a computer
on a fair or on a show room, or avoid your cousins/sons/etc hacking it).
NOTE: maxbase.mnu files for Unix and Mac (\n and \r line-terminated)
are stored in maxbase.*.unix and maxbase.*.mac where * = a language
(eg eng = english or ita = italian).
Just copy one of them into maxbase.mnu.
Q) How can I translate MaxBase in my language?
A) maxbase.eng and maxbase.ita can be copied/renamed to maxbase.mnu;
eg if you 'copy maxbase.ita maxbase.mnu' you'll see all the text strings
turning suddendly into italian words (yes I am italian). To create a new
language just copy maxbase.eng into, as an example, maxbase.de and translate
all the text that's there in German. Copy maxbase.de into maxbase.mnu and
your menus, labels, buttons, everything will show up in German.
Don't forget to send me a copy of your maxbase.mylanguage, so I can include
it in newer releases!
Q) I have heard that I can print and view images. How do I?
A) unzip plugins.zip (or macplug.zip or unixplug.zip)
and you'll find two new buttons in the main panel after a DB has
been loaded: view text/image and print.
View text/image works only with dbs which have the words
"image" and/or "text" in some field's name, and show an applet which
sports the image for that record (field with IMAGE in its name) along
with the text for that record (field with TEXT in its name).
Printing is a bit easier, because you basically select some records, push
the "print records" button and then you're set. In the directory where MaxBase
has been started you'll find a file called "printme.txt". Print it. :)
Q) How much can I customize it? Can I have two languages at once?
A) MaxBase looks for plugins and .mnu files in the directory where it is
launched, so you must pay attention to that (also, the position/size of the
window gets saved in that directory). You can use this info to make it
work for you: call 'java MaxBase' from the directory where you did put a database
plus its own plugins and .mnu and .ini files and you will have a database
customized with those settings (.mnu, plugins, .inis).
More in detail:
plugin.ini -- 2 lines each plugin:
the 1st is the text to show in the button,
the 2nd is the command to issue when the button is pushed.
maxbase.ini -- position, size of the window, number of records to be loaded
at once, active query, index last used.
maxbase.mnu -- menus, labels, buttons, messages, etc.(*)
(*) If maxbase.mnu can't be found, MaxBase proceeds with the default
action: english language, all buttons enabled.
Sayonara!